#pragma once
#include <QObject>

#include "RsgisPortal.h"

#include "RsGisLibRegiBasicRegi.h"
#include "RsGisLibRegiSingLayerRegi.h"
#include "RsGisLibRegiTriWarp.h"
#include "RsGisLibRegiNNWarp.h"
#include "RsGisLibRegiPolyWarp.h"
#include "RsGisLibRegiGCPtoGdal.h"
#include "RsGisLibRegiOffsettoImage.h"

class RsGisLibCMDRegistration : public QObject
{
	Q_OBJECT
public:
	RsGisLibCMDRegistration(RsgisPortal* Port);
	~RsGisLibCMDRegistration();
	RsgisPortal* ClientPort;

public:
	RsGisLibRegiBasicRegi* rsgisRegiBasicRegi;
	RsGisLibRegiSingLayerRegi* rsgisRegiSingLayerRegi;
	RsGisLibRegiTriWarp* rsgisRegiTriWarp;
	RsGisLibRegiNNWarp* rsgisRegiNNWarp;
	RsGisLibRegiPolyWarp* rsgisRegiPolyWarp;
	RsGisLibRegiGCPtoGdal* rsgisRegiGCPtoGdal;
	RsGisLibRegiOffsettoImage* rsgisRegiOffsettoImage;

public slots:
	void RegiBasicRegi();
	void RegiSingLayerRegi();
	void RegiTriWarp();
	void RegiNNWarp();
	void RegiPolyWarp();
	void RegiGCPtoGdal();
	void RegiOffsettoImage();
};